package com.ruoyi.basedata.domain.vo;

import com.baomidou.mybatisplus.annotation.TableField;
import com.ruoyi.common.annotation.Excel;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.apache.poi.ss.usermodel.IndexedColors;

import java.io.Serializable;

@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class TerminalXbImportantTemplate implements Serializable {
    private static final long serialVersionUID = 1L;

    /**
     * 设备归属水司
     */

    @Excel(name = "客户编号")
    private String tenantId;

    /**
     * 设备编号
     */
    @Excel(name = "设备编号", color = IndexedColors.RED)
    private String terminalId;

    @Excel(name = "区域编号", color = IndexedColors.RED)
    private String sheetsCode;

    @Excel(name = "用户编号", color = IndexedColors.RED)
    private String userId;

    /**
     * 厂家编号
     */
    @Excel(name = "厂家编号", color = IndexedColors.RED, dictType = "terminal_supplier",useDictSelectOption = true)
    private String supplierId;


    @Excel(name = "口径", dictType = "ldbd_pipe_caliber", useDictSelectOption = true)
    private String terminalCalibre;
    /**
     * 集中器ID
     */
    @Excel(name = "集中器ID")
    private Long concentratorId;
    /**
     * 采集器id
     */
    @Excel(name = "采集器ID")
    private Long collectorId;

    /**
     * 表型号ID
     */
    @Excel(name = "表型号ID",dictType = "module_type",useDictSelectOption = true)
    private String typeId;

    /**
     * 协议id
     */
    @Excel(name = "协议ID(2:德高nb,3:汇中nb,4:国信直读表协议,5:四联协议)")
    private String protocolId;

    /**
     * 是否带阀控(0：否，1：是)
     */
    @Excel(name = "是否带阀控",combo = {"是", "否"})
    private Long valveControl;

    /**
     * 安装地址
     */
    @Excel(name = "门牌号")
    private String installAddress;

    /**
     * 抄表周期（0：每月，1：单月，2：双月）
     */
    @Excel(name = "抄表周期", color = IndexedColors.RED, combo = {"12","24"})
    private Long meterReaderCycle;

    @Excel(name = "IMEI")
    private String imei;

    @Excel(name = "IMSI(当平台为OneNET时填写)")
    private String imsi;

    @Excel(name = "表解析地址")
    private String communicateAddress;

    @Excel(name = "注册平台", dictType = "sign_platform", useDictSelectOption = true)
    private Integer signPlatform;

    @Excel(name = "通讯类型", dictType = "communication_type", useDictSelectOption = true, type = Excel.Type.ALL)
    private String communicationType;
}
